<?php

class carrinhoController extends Controller{
    
    public function __construct($vars) {
        parent::__construct($vars);
        $this->LoadModel("loja/carrinho", "model");
    }
    
    public function index(){
        $this->genTags("Meu Carrinho de compras");
    	$this->registerVar('carrinho_itens', $this->model->getCarrinho());
    	$this->display("loja/carrinho/listar");
    }
    
    public function inserir(){
        $cod_produto = array_shift($this->vars);
        $this->model->inserirProduto($cod_produto);
        Redirect("loja/carrinho");
    }
    
    public function apagar(){
        $cod_produto = array_shift($this->vars);
        
        $this->registerVar('status'  , '1');
        if(!$this->model->apagarProduto($cod_produto)){
            $this->registerVar('response', $this->model->getErrorMessage());
            $this->registerVar('status'  , '0');
        }
        $this->registerVar("total"   , number_format($this->model->getTotal(), 2, ",", "."));
        $this->registerVar("numitens", $this->model->getNumItens());
        if(!array_key_exists('ajax', $_POST)) Redirect("loja/carrinho");
        else $this->display("loja/carrinho/listar");
    }
    
    public function alterar(){
        $cod_produto = array_shift($this->vars);
        $qtd         = array_shift($this->vars);

        $this->registerVar("status", '1');
        if(!$this->model->modificarQuantidade($cod_produto, $qtd)){
            $this->registerVar("response", $this->model->getErrorMessage());
            $var = $this->model->getMaxValidEstoque();
            if($var != "") $this->registerVar("estoque", $var);
            $this->registerVar("status", '0');
        }
        $this->registerVar("subtotal", number_format($this->model->getSubtotal($cod_produto), 2, ",", "."));
        $this->registerVar("total", number_format($this->model->getTotal(), 2, ",", "."));
        if(!array_key_exists('ajax', $_POST)) Redirect("loja/carrinho");
        else $this->display("loja/carrinho/listar");
    }
    
    public function finalizar(){
        
        //faz a autenticação
        $this->LoadModel("usuario/login", 'obj');
        $bool = $this->obj->needLogin($redirect = 'loja/carrinho/finalizar');
  
        //colhe o cep
        $this->LoadModel("usuario/dados", 'obj');
        $this->obj->needAdress($redirect = 'loja/carrinho/finalizar');

        Redirect("loja/compra/pagamento");
    }
    
}

?>
